from fastapi import APIRouter

from app.controller.user import user
from app.controller.video import (
    category, collect, comment, click_record, investigation, video, barrage
)
from app.controller import public

router = APIRouter()

# [Upload modules]
router.post("/upload/", summary="文件上传", status_code=201, tags=["Upload"])(public.create_upload_file)

# [User modules]
router.get("/secret", summary="获取公钥", tags=["用户模块"])(user.rsa)
router.post("/login", summary="登录", tags=["用户模块"])(user.login)
router.post("/register", summary="注册", tags=["用户模块"])(user.register)

# [Barrage]
router.get("/barrage/list/v3/", summary="列表", tags=["弹幕"])(barrage.get_barrage_list)
# router.get("/barrage/create/many", summary="创建测试弹幕", tags=["弹幕"])(barrage.create_barrage_many)
router.post("/barrage/list/v3/", summary="创建", tags=["弹幕"])(barrage.create_barrage)

# [Category]
router.get("/category/list", summary="列表", tags=["分类"])(category.get_category_list)
router.get("/category", summary="单查", tags=["分类"])(category.get_category)
router.post("/category", summary="新增", tags=["分类"])(category.create_category)
router.put("/category/{category_id}", summary="更新", tags=["分类"])(category.update_category)
router.delete("/category", summary="删除", tags=["分类"])(category.del_category)

# [Video]
router.post("/video", summary="创建视频", tags=["视频"])(video.create_video)

"""
# [File type modules]
router.post("/content/type/create", summary="[有一美人兮，见之不忘]增", tags=["content_type"])(content_type.create_content_type)
router.get("/content/type", summary="[一日不见兮，思之如狂] 单查", tags=["content_type"], )(content_type.get_content_type)
router.get("/content/type/list", summary="[情不知所起，一往而深] 全查", tags=["content_type"], )(content_type.get_content_type_list)
router.delete("/content/type/delete", summary="[衣带渐宽终不悔，为伊消得人憔悴] 单删", tags=["content_type"], )(
    content_type.del_content_type)



router.post("/uploads/", summary="上传多个文件", status_code=201, tags=["文件上传"])(
    files_manager.create_upload_more)

# [financial bill module]
router.get("/bill/list", tags=["Money"])(financial.get_bill_list)
router.get("/bill", tags=["Money"])(financial.get_bill)
router.post("/bill", tags=["Money"])(financial.create_bill)
router.put("/bill/{bill_id}", tags=["Money"])(financial.update_bill)
router.delete("/bill", tags=["Money"])(financial.del_bill)

router.get("/payment/list", tags=["Money"])(financial.get_payment_list)
"""
